---
title: SAIF.Business.Policy dependencies
summary: Internal and external dependencies for this library.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-08-21
library: SAIF.Business.Policy
reference_type: package
---

# SAIF.Business.Policy dependencies

## Internal dependencies

`SAIF.Business.Policy.vbproj` declares no `<ProjectReference>` element, so it has no outbound same-repo project dependencies. The internal organizational packages it consumes via NuGet (`packages.config` + `<Reference><HintPath>`) are listed below.

| Dependency | Reference Type | Usage |
| --- | --- | --- |
| SAIF.BOF.Framework | NuGet Package | Base classes and services for the BOF pattern — `clsBusinessBase`, `clsBusinessCollection(Of T)`, `IBusinessCriteria`, `IBusinessObject`, `IDataPortalInfo`, `IPortalRequest`, `IDataRequest`, `IDataAccess`, `clsSAIFDataReader`, `clsResultSet`, `clsSmartDate`, `clsSmartString`, `clsConstants`, `CTB.ExtendedCodeMap`/`ExtendedCodeInfo` |
| SAIF.BOF.Business | NuGet Package | Project-level `Import` of `SAIF.Business` namespace |
| SAIF.BOF.ResourceFiles | NuGet Package | Referenced assembly; not used in source** |
| SAIF.Framework.Common | NuGet Package | Referenced assembly; not used explicitly in source** |
| SAIF.HashUtil | NuGet Package | Referenced assembly; not used in source** |
| SAIF.Legacy.BankValidator | NuGet Package | Referenced assembly (`BankValidator`); not used in source**, correlates with the `Institutions` bank dataset* |
| SAIF.Web.API.Clients | NuGet Package | Referenced assembly; not used in source** |
| ImagingAPI.Client | NuGet Package | Referenced assembly; not used in source** |
| PdfAPI.Client | NuGet Package | Referenced assembly; not used in source** |

## External dependencies

Consumption method for all of the below is `nuget` (`SAIF.Business.Policy/packages.config` + `<Reference><HintPath>..\packages\...`); there are no `<PackageReference>` elements.

| Dependency | Version | Usage |
| --- | --- | --- |
| Oracle.ManagedDataAccess | 21.5.0 | Indirect — registered as `DbProviderFactory` in `app.config`/`Web.config`; underlies all Oracle data access performed through the framework data portal |
| Autofac | 3.5.2 | Referenced assembly; not used in source** |
| FluentValidation | 5.5.0.0 | Referenced assembly; not used in source** |
| iTextSharp | 5.5.11 | Referenced assembly; not used in source** |
| log4net | 2.0.5 | Referenced assembly; not used in source** |
| Newtonsoft.Json | 8.0.3 | Referenced assembly; not used in source**; binding redirect in `app.config` |
| RestSharp | 106.12.0 | Referenced assembly; not used in source** |
| Microsoft.AspNet.WebApi.Client / .Core / .WebHost | 5.2.7 | Referenced assemblies (`System.Net.Http.Formatting`, `System.Web.Http`, `System.Web.Http.WebHost`); not used in source** |
| Microsoft.Bcl.AsyncInterfaces, System.Buffers, System.Memory, System.Numerics.Vectors, System.Runtime.CompilerServices.Unsafe, System.Text.Encodings.Web, System.Text.Json, System.Threading.Tasks.Extensions, System.ValueTuple | see `packages.config` | Transitive BCL support assemblies only |

Framework (BCL) references: `System`, `System.Core`, `System.Data`, `System.Data.DataSetExtensions`, `System.Net.Http`, `System.Numerics`, `System.Web`, `System.Xml`.

## Dependency risks and notes
- `PolicyInformation` bypasses the BOF business-object pattern and issues application-layer SQL/stored-procedure calls directly through `IPortalRequest`/`IDataRequest`, creating a second, parallel data-access style alongside the BOF `clsHazardGroup`/`clsHazardGroupCollection` pattern — a maintenance seam.*
- Most of the referenced NuGet assemblies (`SAIF.BOF.ResourceFiles`, `SAIF.Framework.Common`, `SAIF.HashUtil`, `SAIF.Legacy.BankValidator`, `SAIF.Web.API.Clients`, `Autofac`, `FluentValidation`, `iTextSharp`, `log4net`, `Newtonsoft.Json`, `RestSharp`, `Microsoft.AspNet.WebApi.*`) are declared but have no confirmed usage in the compiled source of this library.**
- The internal organizational packages `ImagingAPI.Client` and `PdfAPI.Client` are also referenced assemblies with no confirmed usage in the compiled source of this library.**
- Two Oracle stored routines are invoked (`pk73069_rating_procs.get_minimum_expense_constant`, `pk73102_policy.does_wcis_own_submission`); both were retrieved successfully via the Legends CLI (package spec and body for both), and both .NET call sites are confirmed live, reachable code — see [Procedures](procedures/index.md).
- `PolicyInformation.PolicyMinimumPremium` binds an `out_expense_constant_amount` output parameter that is never read back by the caller — a possible latent defect or unused-by-design output.*
- The target Oracle database/schema is never named in code or config; the connecting instance and schema are resolved by the caller-supplied `IDataPortalInfo` at runtime.*
- No transitive dependencies from framework libraries were identified in the analysis findings beyond the direct NuGet references listed above; the "Transitive dependencies" section is therefore omitted.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [Procedures](procedures/index.md)
- [API reference](api/index.md)

## Sources
- `SAIF.Business.Policy/SAIF.Business.Policy.vbproj`
- `SAIF.Business.Policy/packages.config`
